/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Controller;

import Model.*;
import GUI.EnigmaGUIMainWindow;
import java.io.File;

/**
 *
 * @author Snowangelic
 */
public abstract class EnigmaController {
    protected EnigmaModel model;
    protected EnigmaGUIMainWindow gui;

    int gameState;

    protected int mouseX;
    protected int mouseY;
    protected int timestampOffset;

    public void EnigmaController(EnigmaModel model,EnigmaGUIMainWindow gui){
        this.model=model;
        this.gui=gui;
    }

    public double[] getImpulse() {
       double[] mouseCoords=new double[2];
       mouseCoords[0]=(0.75)*(mouseX);
       mouseCoords[1]=(0.75)*(mouseY);
       mouseX=0;
       mouseY=0;
       return mouseCoords;
    }
    
    public abstract void mouseMoved(MouseMovedCommand mouseMovedCommand);

    public abstract void keyPressed(int keyCode);

    public abstract void saveReplay(File file);

    public abstract void scrollInventory(ScrollInventoryCommand scrollInventoryCommand);

    public abstract void useActiveItem(UseActiveItemCommand useActiveItemCommand);

}
